import request from "../../../utils/request"

/**
 * 用户登录
 * @param obj
 * @returns {AxiosPromise}
 */
export function login(obj) {
	return request({
		url: `/login`,
		method: "post",
		data: JSON.stringify(obj),
	})
}

/**
 * 用户退出登录
 * @returns {AxiosPromise}
 */
export function logout() {
	return request({
		url: `/logout`,
		method: "post",
	})
}

/**
 * 分页查询所有用户
 * @param obj
 * @returns {AxiosPromise}
 */
export function findUserPage(obj) {
	return request({
		url: `/admin/demo-user/page`,
		method: "post",
		data: JSON.stringify(obj),
	})
}

/**
 * 增加用户
 * @param obj
 * @returns {AxiosPromise}
 */
export function registerUser(obj) {
	return request({
		url: `/admin/demo-user/save`,
		method: "post",
		data: JSON.stringify(obj),
	})
}

/**
 * 编辑用户
 * @param obj
 * @returns {AxiosPromise}
 */
export function updateUser(obj) {
	return request({
		url: `/admin/demo-user/update`,
		method: "post",
		data: JSON.stringify(obj),
	})
}

/**
 * 删除用户
 * @param id
 * @returns {AxiosPromise}
 */
export function deleteUser(id) {
	return request({
		url: `/admin/demo-user/delete/` + id,
		method: "post",
	})
}

/**
 * 所有用户数据导出
 * @returns {AxiosPromise}
 */
export function exportData() {
	return request({
		url: `/admin/demo-user/exportData`,
		method: "get",
	})
}

/**
 * 分页查询所有在线用户
 * @returns {AxiosPromise}
 */
export function findAllOnlineUser(obj) {
	return request({
		url: `/admin/demo-user/onlinePage`,
		method: "post",
		data: JSON.stringify(obj),
	})
}

/**
 * 根据id强制登出用户
 * @param username
 * @returns {AxiosPromise}
 */
export function forcedReturnById(username) {
	return request({
		url: `/admin/demo-user/forcedReturnById?username=`+username,
		method: "get"
	})
}

/**
 * 免登录校验
 * @param token
 * @returns {AxiosPromise}
 */
export function sso(token) {
	return request({
		url: `/ssoLogin?token=`+token,
		method: "get",
	})
}

/**
 * 根据id查询用户
 * @param id
 * @returns {AxiosPromise}
 */
export function findUserById(id) {
	return request({
		url: `/admin/demo-user/get?id=`+id,
		method: "get",
	})
}
